import Vue from "vue";
import VueRouter from 'vue-router'
import Login from './components/Login.vue'
import Home from './components/Home.vue'
import Welcome from "./components/Welcome.vue"
import Users from "./components/user/Users.vue"
import Rights from "./components/power/Rights.vue"
import Roles from './components/power/Roles.vue'
import Cate from './components/goods/Cate.vue'
import Params from './components/goods/params.vue'


Vue.use(VueRouter);
// 导入路由组件

// // 配置路由信息
// let routes = []
// // 路由实例化的配置
// let router = new VueRouter({
//     base: '/api',
//     timeout: "10000",
//     routes
// })




const router = new VueRouter({
    routes: [
        { path: '/', redirect: '/login' },
        { path: '/login', component: Login },
        {
            path: '/home', component: Home, redirect: '/welcome',
            children: [
                {
                    path: '/welcome', component: Welcome
                },
                {
                    path: '/users', component: Users
                },
                {
                    path: '/rights', component: Rights
                },
                {
                    path: '/roles', component: Roles
                },
                {
                    path: '/categories', component: Cate
                },
                {
                    path: '/params', component: Params
                }
            ]
        }
    ]
})

// 挂载路由守卫
router.beforeEach((to, from, next) => {
    // to代表将要访问的路径
    // from 代表从哪个路径跳转而来
    // next 是一个函数，表示放行
    //   next() 放行     next('/login') 强制跳转

    if (to.path === '/login') return next();
    // 获取token
    const tokenStr = window.sessionStorage.getItem('token')
    if (!tokenStr) return next('/login')
    next();
});
// 导出路由
export default router